package com.ruoyi.notice.service;

import com.ruoyi.notice.domain.SysNotices;

import java.util.List;

/**
 * @author YL
 * @version 1.0
 * @date 2020/6/29 14:09
 */
public interface SysNoticesService {

    /**
     * 查询所有普通公告信息
     */
    public List<SysNotices> selectAll();

    /**
     * 查询所有寻源公告信息
     */
    public List<SysNotices> selectAll2();

    /**
     * 根据id查找公告信息
     * @param id
     * @return
     */
    public SysNotices selectNoticeById(Long id);

    /**
     * 模糊查询公告
     *
     * @param notice 公告信息
     * @return 公告信息集合
     */
    public List<SysNotices> selectNoticeList(SysNotices notice);

    /**
     * 新增公告信息
     *
     * @param notice 公告信息
     * @return 结果
     */
    public int insertNotice(SysNotices notice);

    /**
     * 修改公告信息
     *
     * @param notice 公告信息
     * @return 结果
     */
    public int updateNotice(SysNotices notice);

    /**
     * 终止公告
     */
    public int breakNotice(SysNotices notice);

    /**
     * 删除公告信息
     *
     * @param id 公告信息ID
     * @return 结果
     */
    public int deleteNoticeById(Long id);

    /**
     * 批量删除公告信息
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteNoticeByIds(String ids);

    /**
     * 根据公告ID显示物料名称
     */
    public List<String> selectMaterialByNoticeId(Long noticeId);

    /**
     * 查找所有关联物料的名称
     */
    public List<String> selectMaterial();

    /**
     * 编辑关联物料
     */
    public int insertMaterial(SysNotices notice);

    /**
     * 删除关联物料
     */
    public int deleteMaterial(Long noticeId);
}
